/* Copyright (c) 2004-2024 peigen.info. All rights reserved. */

package info.peigen.hotpot.manage.core.manage.form;

import info.peigen.hotpot.common.service.base.manage.ManageFormBase;
import info.peigen.hotpot.manage.core.enums.UserStatus;
import io.swagger.annotations.ApiModelProperty;
import jakarta.validation.constraints.Size;
import lombok.*;
import lombok.experimental.Accessors;
import lombok.experimental.FieldDefaults;
import lombok.experimental.SuperBuilder;

/**
 * <b>(UserEditForm)</b>
 * 管理后台 修改"用户"
 *
 * @author Peigen
 * @version 1.0.0
 * @since 2024-08-02
 */
@EqualsAndHashCode(callSuper = true)
@SuperBuilder
@Data
@NoArgsConstructor
@AllArgsConstructor
@FieldDefaults(level = AccessLevel.PRIVATE)
@Accessors(chain = true)
public class UserEditForm extends ManageFormBase {
    @ApiModelProperty(value = "用户Id", position = 1)
    @Size(max = 30, message = "[用户Id]超长")
    String     userId;
    @ApiModelProperty(value = "老登录密码", position = 5)
    @Size(max = 100, message = "[老登录密码]超长")
    String     oldPassword;
    @ApiModelProperty(value = "新登录密码", position = 6)
    @Size(max = 100, message = "[新登录密码]超长")
    String     newPassword;
    @ApiModelProperty(value = "确认新登录密码", position = 7)
    @Size(max = 100, message = "[确认新登录密码]超长")
    String     confirmNewPassword;
    @ApiModelProperty(value = "状态", position = 9)
    UserStatus status;
    @ApiModelProperty(value = "角色Ids", position = 12)
    @Size(max = 1000, message = "[角色Ids]超长")
    String     roleIds;
    @ApiModelProperty(value = "职位Ids", position = 13)
    @Size(max = 1000, message = "[职位Ids]超长")
    String     positionIds;
    @ApiModelProperty(value = "组织Ids", position = 14)
    @Size(max = 1000, message = "[组织Ids]超长")
    String     organizationIds;
    @ApiModelProperty(value = "memo", position = 21)
    @Size(max = 2000, message = "[memo]超长")
    String     memo;
}